docker 使用注意事项

Docker 是一个开源的应用容器引擎,让开发者可以打包他们的应用以及依赖包到一个可移植的容器中,然后发布到任何流行的 Linux 机器上,也可以实现虚拟化

docker的安装

    #通用安装
    wget -qO- https://get.docker.com | sh

    # centos7
    yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
    yum makecache
    yum install docker 

    # ubuntu
    apt install docker.io
    
    # debian
     wget https://download.docker.com/linux/debian/dists/stretch/pool/stable/amd64/docker-ce_17.03.0\~ce-0\~debian-stretch_amd64.deb
         dpkg -i docker-ce_17.03.0\~ce-0\~debian-stretch_amd64.deb

卸载安装的docker

	rpm list installed|grep docker
	rpm -qa|grep docker
	yum -y remove xxxxxxxx
	rm -rf /var/lib/docker

设置不输入 sudo

    sudo usermod -aG docker ${USER}

    sudo service docker restart

    sudo newgrp - docker

设置中国镜像

linux: 创建 /etc/docker/daemon.json

    {
        "registry-mirrors": ["https://registry.docker-cn.com"]
    }

容器启动后又关闭

当 docker run -d nginx 时发现容器启动后立即关闭 原因

    docker后台运行,就必须有一个前台进程,主线程结束,容器就会退出

    改成: docker run -d -it nginx 

连接容器

    当 docker attach nginx 时,输入 exit 或 ctrl+D 终止容器

    若依次输入 ctrl+P,ctrl+Q 则不会终止容器而只是退出链接

CMD - ENTRYPOINT

    dockerfile 中 cmd 和 entrypoint 都只能设置一次
    cmd        : 当 docker run 附加命令时,不会执行cmd
    entrypoint : 无论docker start restart run 一定会执行
    若依次输入 ctrl+P,ctrl+Q 则不会终止容器而只是退出链接

volume磁盘挂载

    docker volume create mysql_data

    docker volume inspect mysql_data

    当磁盘挂载不上是,需要关掉liunx的 seliunx

    查看 seliunx 状态:   sestate  -v

    3种方法: 1. setenforce  0

            2.容器启动,添加--privileged=true
            
            3. 修改 /etc/selinux/config 将SELINUX=enforcing改为SELINUX=disabled

# docker 

评论

Your browser is out-of-date!

Update your browser to view this website correctly. Update my browser now

×